package com.itheima.d4_transform;

import java.io.FileInputStream;
import java.io.InputStreamReader;

//目标：了解InputStreamReader把原始的字节流按照指定编码转换成字符输入流
public class Demo02 {
    public static void main(String[] args) throws Exception {
        /**
         * InputStreamReader(InputStream is)：几乎不用
         *      可以把原始的字节流按照代码默认编码转换成字符输入流
         *
         * InputStreamReader(InputStream is ，String charset)：
         *      可以把原始的字节流按照指定编码转换成字符输入流，这样字符流中的字符就不乱码了(重点)
         *
         * 需求：使用字符输入转换流读取f-gbk.txt文件内容，使其读取内容不乱码
         */
        //1.创建字符输入转换流（字符输入流），提供字节输入流（FileInputStream）
        //InputStreamReader isr = new InputStreamReader(new FileInputStream("day09-io\\resources\\f-gbk.txt"));
        InputStreamReader isr = new InputStreamReader(new FileInputStream("day09-io\\resources\\f-gbk.txt"), "gbk");
        //一次读取一个字符数组
        char[] chs = new char[1024];
        int len;
        while ((len = isr.read(chs)) != -1) {
            String str = new String(chs, 0, len);
            System.out.print(str);
        }
    }
}
